← Index
NYTProf Performance Profile   
For ../prof.pl
  Run on Wed Dec 14 15:57:08 2022
Reported on Wed Dec 14 16:00:35 2022

Filename(eval 325)[/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/Sub/Quote.pm:3]
StatementsExecuted 276 statements in 1.42ms
Eval Invoked At/Users/ether/.perlbrew/libs/36.0@std/lib/perl5/Sub/Quote.pm line 3
Sibling evals1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113
Subroutines
Calls P F Exclusive
Time
Inclusive
Time
Subroutine
6422238µs239µsJSON::Schema::Modern::::_assert__format_validations JSON::Schema::Modern::_assert__format_validations
11127µs61µsJSON::Schema::Modern::::BEGIN@7.182 JSON::Schema::Modern::BEGIN@7.182
1118µs20µsMethod::Generate::Accessor::_Generated::::BEGIN@24.184Method::Generate::Accessor::_Generated::BEGIN@24.184
1117µs7µsMethod::Generate::Accessor::_Generated::::BEGIN@12.183Method::Generate::Accessor::_Generated::BEGIN@12.183
Call graph for these subroutines as a Graphviz dot language file.
Line State
ments
Time
on line
Calls Time
in subs
Code
1{
225µs my $_UNQUOTED = ${$_[1]->{"\$_UNQUOTED"}};
311µs my $default_for__5fformat_5fvalidations = ${$_[1]->{"\$default_for__5fformat_5fvalidations"}};
410s my $isa_check_for__5fformat_5fvalidations = ${$_[1]->{"\$isa_check_for__5fformat_5fvalidations"}};
511µs my $_QUOTED = ${$_[1]->{"\$_QUOTED"}};
6 package JSON::Schema::Modern;
7265µs295µs
# spent 61µs (27+34) within JSON::Schema::Modern::BEGIN@7.182 which was called: # once (27µs+34µs) by Sub::Quote::_clean_eval at line 7
no warnings 'closure';
# spent 61µs making 1 call to JSON::Schema::Modern::BEGIN@7.182 # spent 34µs making 1 call to warnings::unimport
8
# spent 239µs (238+1000ns) within JSON::Schema::Modern::_assert__format_validations which was called 64 times, avg 4µs/call: # 63 times (225µs+0s) by JSON::Schema::Modern::_get_format_validation at line 17 of (eval 323)[Sub/Quote.pm:3], avg 4µs/call # once (13µs+1µs) by JSON::Schema::Modern::add_format_validation at line 17 of (eval 324)[Sub/Quote.pm:3]
sub _assert__format_validations {
9 ($_QUOTED,$_UNQUOTED) if 0;
10# BEGIN quote_sub PRELUDE
11package Method::Generate::Accessor::_Generated;
12
# spent 7µs within Method::Generate::Accessor::_Generated::BEGIN@12.183 which was called: # once (7µs+0s) by Sub::Quote::_clean_eval at line 17
BEGIN {
1311µs $^H = 2018;
1411µs ${^WARNING_BITS} = "UUUUUUUUUUUUUUUUUUUU";
15110µs %^H = (
16 );
17143µs17µs}
18# END quote_sub PRELUDE
1964179µsdo {
20 my $val = exists $_[0]->{"_format_validations"} ?
21$_[0]->{"_format_validations"}
226465µs: do {
2312µs11µs my $value = $default_for__5fformat_5fvalidations->($_[0]);
246996µs232µs
# spent 20µs (8+12) within Method::Generate::Accessor::_Generated::BEGIN@24.184 which was called: # once (8µs+12µs) by Sub::Quote::_clean_eval at line 24
do { no warnings "void"; package Type::Tiny; (do { package Type::Tiny; (Ref::Util::XS::is_plain_hashref($value)) and (not grep {my $v = ($value)->{$_};not((/\A(?:date\-time|date|time|duration|email|idn\-email|hostname|idn\-hostname|ipv4|ipv6|uri|uri\-reference|iri|iri\-reference|uuid|uri\-template|json\-pointer|relative\-json\-pointer|regex)\z/) or (((!!1)) and (do { package Type::Tiny; (Ref::Util::XS::is_plain_hashref($v)) and not(grep !/\A(?:type|sub)\z/, keys %{$v}) and exists($v->{"type"}) and (defined($v->{"type"}) and !ref($v->{"type"}) and $v->{"type"} =~ m{\A(?:(?:array|boolean|integer|nu(?:ll|mber)|object|string))\z}) and exists($v->{"sub"}) and do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($v->{"sub"}) } })))} keys %{$value}) and (!exists $value->{"date-time"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"date-time"}) })) and (!exists $value->{"date"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"date"}) })) and (!exists $value->{"time"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"time"}) })) and (!exists $value->{"duration"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"duration"}) })) and (!exists $value->{"email"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"email"}) })) and (!exists $value->{"idn-email"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"idn-email"}) })) and (!exists $value->{"hostname"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"hostname"}) })) and (!exists $value->{"idn-hostname"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"idn-hostname"}) })) and (!exists $value->{"ipv4"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"ipv4"}) })) and (!exists $value->{"ipv6"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"ipv6"}) })) and (!exists $value->{"uri"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"uri"}) })) and (!exists $value->{"uri-reference"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"uri-reference"}) })) and (!exists $value->{"iri"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"iri"}) })) and (!exists $value->{"iri-reference"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"iri-reference"}) })) and (!exists $value->{"uuid"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"uuid"}) })) and (!exists $value->{"uri-template"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"uri-template"}) })) and (!exists $value->{"json-pointer"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"json-pointer"}) })) and (!exists $value->{"relative-json-pointer"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"relative-json-pointer"}) })) and (!exists $value->{"regex"} or (do { package Type::Tiny; Ref::Util::XS::is_plain_coderef($value->{"regex"}) })) }) or Type::Tiny::_failed_check($isa_check_for__5fformat_5fvalidations, "Dict[date=>Optional[CodeRef],date-time=>Optional[CodeRef],duration=>Optional[CodeRef],email=>Optional[CodeRef],hostname=>Optional[CodeRef],idn-email=>Optional[CodeRef],idn-hostname=>Optional[CodeRef],ipv4=>Optional[CodeRef],ipv6=>Optional[CodeRef],iri=>Optional[CodeRef],iri-reference=>Optional[CodeRef],json-pointer=>Optional[CodeRef],regex=>Optional[CodeRef],relative-json-pointer=>Optional[CodeRef],time=>Optional[CodeRef],uri=>Optional[CodeRef],uri-reference=>Optional[CodeRef],uri-template=>Optional[CodeRef],uuid=>Optional[CodeRef],Slurpy[HashRef[Dict[sub=>CodeRef,type=>Enum[\"null\",\"object\",\"array\",\"boolean\",\"string\",\"number\",\"integer\"]]]]]", $value, "attribute_name","_format_validations","attribute_step","isa check","mgaca","0","varname","\$self->{\"_format_validations\"}"); $value };
# spent 20µs making 1 call to Method::Generate::Accessor::_Generated::BEGIN@24.184 # spent 12µs making 1 call to warnings::unimport
2511µs $_[0]->{"_format_validations"} = $value
26 }
27;
286427µs exists $_[0]->{"_format_validations"}
29 or Carp::croak(q{Attempted to access '}."_format_validations".q{' but it is not set});
306414µs $val;
31}
32 }
3312µs $$_UNQUOTED = \&_assert__format_validations;
34}
3518µs1;
36
37;